package com.aaa.project.zhreport.service;

import com.aaa.project.zhreport.controller.dto.*;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

/**
 * @author baibin
 * @version 1.0
 * @date 2025/4/9 10:13
 * @description YwfxDataApplyService
 */
public interface YwfxDataApplyService {

    /**
     * 申请数据
     *
     * @param reqDTO 申请参数
     * @return 批次号
     */
    void apply(YwfxDataApplyReqDTO reqDTO, HttpServletRequest request);

    /**
     * 查询申请列表
     *
     * @param request 查询参数
     * @return 申请列表
     */
    List<YwfxDataApplyResDTO> list(YwfxDataApplyQueryDTO request);

    /**
     * 审批数据
     *
     * @param request
     */
    String approve(YwfxDataApplyProcessReqDTO request);

    /**
     * 查询申请详情
     *
     * @param id
     * @return
     */
    YwfxDataApplyDetailResDTO detail(Long id);

    /**
     * 生成SQL
     *
     * @param reqDTO 申请参数
     * @return SQL
     */
    String generateSql(YwfxDataApplyReqDTO reqDTO);

    /**
     * 预执行sql
     *
     * @param reqDTO
     */
    void preExecuteSql(YwfxDataApplyReqDTO reqDTO);

    /**
     * 查询工单系统
     */
    String queryOrderList(String userId, String orderTime);
}
